The invention is generally related to computers and computer software. More specifically, the invention is generally related to the display of and navigation between hypertext documents with browser computer programs and the like.
The amount and variety of information that can be accessed through a computer continues to increase at an astounding rate. The Internet, in particular, has enabled computer users to access a wide variety of information from other computers located all over the world.
Much of the information accessible via the Internet is organized into hypertext documents, which are typically documents formatted in a language known as Hypertext Markup Language (HTML), and which are accessed via a segment of the Internet known as the World Wide Web. Hypertext documents typically include one or more embedded xe2x80x9chypertext linksxe2x80x9d that an end user can select to either jump to different documents, or to jump to different locations within the same document. Each hypertext document typically is identified by the storage location (known as a Uniform Resource Locator (URL)) at which the document is stored, with a hypertext link to a particular document specifying the storage location of that document so that, upon selection of the link, that document may be retrieved.
A wide variety of other information such as text, graphics, video, sound, and animation may be integrated into hypertext documents, and moreover, these documents can be organized into xe2x80x9csitesxe2x80x9d, typically maintained by a single entity, that collect multiple related documents together in a coherent fashion. Furthermore, due to the immense popularity of the World Wide Web, many private computer networks now also support hypertext documents, as do a number of existing computer operating systems and computer software applications.
A computer program, often referred to as a browser, is typically used to navigate between and through hypertext documents. With a browser, an end user can use a mouse or other pointing device to point and click on links such as highlighted text, images or other user interface components (e.g., buttons) in documents to navigate to different documents and/or to different locations within the same document.
While the point and click interface used to navigate between hypertext documents is exceptionally simple to learn and use, the wealth of available information makes it relatively easy for a user to forget the specific locations of useful documents.
As an attempt to address this difficulty, many browsers support the use of aliases (also referred to as xe2x80x9cshortcutsxe2x80x9d, xe2x80x9cbookmarksxe2x80x9d or xe2x80x9cfavoritesxe2x80x9d), through which a user can maintain a list of favorite sites or documents that a user expects to revisit in the future. Retrieving a bookmarked document at a later date then only requires the user to locate the bookmark corresponding to a desired document in the list, and then select that bookmark to initiate retrieval of the document.
An important limitation of bookmark lists, however, is that the larger the lists become, the more difficult it is to locate specific bookmarks in the lists. Thus, a user often must exercise some degree of self-control to only add bookmarks for the more important documents so as to keep the size of the list at a manageable level.
As a partial answer to the problem of overly long bookmark lists, many browsers support the use of folders in a bookmark list. Each folder is a manually-created category that can have bookmarks and/or other folders attached to it. Folders allow the creation of hierarchical bookmark list structures wherein a higher tier folder is accessed in order to display its attached lower tier bookmarks and folders.
The user is solely responsible for the creation of efficient folder structures. The user creates a folder name, places the folder in the appropriate place in the bookmark list, and moves or copies to this new folder the desired lower tier bookmarks and folders. The folder is not associated directly with a hypertext document and thus the browser cannot assist by accessing properties of the hypertext document to suggest appropriate folder names. Also, the browser does not analyze existing bookmarks and folders for patterns of association that would suggest placement options and appropriate lower tier contents of the new folder.
The use of folders for organizing bookmarks is problematic. First, the user may not utilize the capability of organizing with folders due to unfamiliarity or due to the administrative burden. Second, the user may create an inferior bookmark list structure due to poor characterization of his bookmarks. Third, the user may not correctly discern the associations within his bookmark list and poorly place folders and bookmarks. Fourth, since the bookmarks are not automatically cross referenced across folders, the user may fail to put the bookmark in multiple locations within the bookmark list structure, thus helpful hypertext documents are not suggested when accessing certain folders. Fifth, if the user does place copies in multiple locations, the user is burdened with additional work during creation and editing of the bookmark list, as well as creating additional physical storage requirements. Sixth, the user may not realize that folders and bookmarks have become xe2x80x9cstalexe2x80x9d, having become inaccessible or having original or changed content that no longer has interest to this user. Sixth, the browser may be used by a second user that did not create the folder structure, and thus does not appreciate its organization.
One situation where a user might refrain from organizing and maintaining a bookmark list using the folder method is when the user finds related sites of interest over a period of time, and has created intervening bookmarks that are not related. During this span of time, the user may not remember having saved a useful bookmark or may have not recognized how some of these sites were related and lent themselves to being grouped. Also, some bookmarks may have been of interest for only a specific period of time but were left on the list due to the inconvenience in editing the list. In addition, the bookmark list may have begun by being cluttered by bookmarks and folders created by the provider of the computer or software or other users.
Therefore, a significant need exists for an improved manner of creating bookmarks, and organizing and presenting such bookmarks in a more logical and coherent fashion.
The invention addresses these and other problems associated with the prior art by providing an apparatus, program product, and method that organize bookmarks for hypertext documents by determining a mutual affinity by one or a plurality of shared characteristics. These affinities allow the bookmark list to be dynamically organized to serve as a basis for restructuring an existing bookmark list and/or to facilitate keeping bookmarks current.
The new capabilities of organizing and maintaining the bookmark list are based on determining bookmark affinities in a number of manners consistent with the invention. The bookmark record itself, or the hypertext document accessible by the bookmark, may provide these characteristics.
Examples of characteristics from which affinities can be made include first the storage location address, often a Universal Resource Locator (URL), that will show that the two hypertext documents share a related path. Second, the hypertext document referenced, often formatted in Hypertext Markup Language (HTML), may contain additional storage locations addresses or URL""s that are the same as in a second hypertext document. Third, the content of each hypertext document can be scanned for non-trivial words and a count made of the shared words. Fourth, hypertext documents may have descriptions that are accessed, e.g., via an embedded tag such as an HTML meta tag that is often used by Internet search engines in performing searches. In typical usage, information within a meta tag is not displayed by an Internet browser, although displayed information may also be a basis for determining affinity. These shared keywords can be a basis for an affinity.
When these characteristics or others are compared individually or in combination, a determination of an affinity can be made. This determined affinity then allows new bookmarks to be associated with existing bookmarks and grouped in a bookmark list. Moreover, an existing set of bookmarks can be assessed for affinities to reorganize or otherwise update a bookmark list.
Therefore, consistent with one aspect of the invention, a computer-implemented method is provided for associating a first bookmark for a storage location to a second bookmark. The method includes determining an affinity between first and second bookmarks; and associating the first bookmark with the second bookmark.
The invention also provides in another aspect an apparatus, program product and method in which selected bookmarks from a bookmark list may have a secondary function as containers for other bookmarks in the list. Specifically, given bookmarks in a list may additionally operate both as navigable links and as folders for lists of related bookmarks. Then, depending upon the particular user input supplied to display representations of such bookmarks, either the link or folder functions of such bookmarks may be activated to either access hypertext documents or view lists of related bookmarks.
Bookmarks may be related to a given bookmark based upon affinity in the manner discussed above. Moreover, such bookmarks may be related simply by a user manually organizing bookmarks to be contained within other bookmarks, in much the same manner as bookmarks are conventionally organized within folders.
Therefore, consistent with another aspect of the invention, a computer-implemented method is provided for accessing hypertext documents. The method includes displaying a display representation of a first of a plurality of bookmarks, each bookmark having associated therewith a storage location address for use in accessing a hypertext document, the first bookmark further having associated therewith a list of related bookmarks from the plurality of bookmarks; in response to first user input directed to the display representation of the first bookmark, accessing the hypertext document located at the storage location address associated with the first bookmark; and in response to second user input directed to the display representation of the first bookmark, displaying a display representation of each bookmark in the list of related bookmarks associated with the first bookmark.
These and other advantages and features, which characterize the invention, are set forth in the claims annexed hereto and forming a further part hereof. However, for a better understanding of the invention, and of the advantages and objectives attained through its use, reference should be made to the Drawings, and to the accompanying descriptive matter, in which there is described exemplary embodiments of the invention.